/**
 * 
 * 盛水最多的容器
 * 
 * 描述

给定一个数组height，长度为n，每个数代表坐标轴中的一个点的高度，height[i]是在第i点的高度，请问，从中选2个高度与x轴组成的容器最多能容纳多少水
1.你不能倾斜容器
2.当n小于2时，视为不能形成容器，请返回0
3.数据保证能容纳最多的水不会超过整形范围，即不会超过231-1

数据范围:
0
<
=
h
e
i
g
h
t
.
l
e
n
g
t
h
<
=
1
0
5
0<=height.length<=10 
5
 
0
<
=
h
e
i
g
h
t
[
i
]
<
=
1
0
4
0<=height[i]<=10 
4
 

如输入的height为[1,7,3,2,4,5,8,2,7]，那么如下图:
 */
public class 盛水最多的容器 {
    
    public static void main(String[] args) {
        

    }

     /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     * 
     * @param height int整型一维数组 
     * @return int整型
     */
    public static int maxArea (int[] height) {
        // write code here

        int left = 0;
        int right = height.length - 1;
        int maxArea = 0;
        while (left < right) {
            int area = Math.min(height[left], height[right]) * (right - left);
            maxArea = Math.max(maxArea, area);
            if (height[left] < height[right]) {
                left++;
            } else {
                right--;
            }
        }
        return maxArea;
    }
}
